package com._119yn.host.gst200.database.dao;

import com._119yn.host.gst200.database.entity.PointTableRecord;

import java.util.Collection;
import java.util.List;
import java.util.Set;

public interface PointTableRecordDao {

    long insert(PointTableRecord pointTableRecord);

    long deleteByDeviceId(String deviceId);

    long updateByDeviceId(PointTableRecord pointTableRecord);

    PointTableRecord selectByDeviceId(String deviceId);

    List<PointTableRecord> selectAll();

    PointTableRecord selectByPanelAndDeviceAddressAndDeviceType(int panel, String deviceAddress, String deviceType);

    long truncate();

    long insertBatch(List<PointTableRecord> pointTableRecords);

    PointTableRecord selectByDeviceType(String deviceType);

    List<PointTableRecord> selectByDeviceTypeIn(Set<String> deviceTypes);

    List<PointTableRecord> selectByPanelIn(Collection<Integer> panels);

}
